<?php
class Causas extends Controller{
    function Causas()
    {
        parent::Controller();
        $this->load->helper('url');
		$this->load->helper('form');
		$this->load->library('form_validation');
		$this->load->model('causas_model');
		$this->load->library('pagination'); 
		$this->load->library('my_library');
		$this->load->helper('text');
    }
    
    function index()
    {   
        $data['levelUser'] = $this->session->userdata('nivel');                
        if( $data['levelUser'] == '1')
        {
        	$this->load->view('mod_causas/indexAdmin');
        }
        else
        {
 			$data['fecha'] = $this->causas_model->getLast_fecha();
        	if(empty($data['fecha']))
        	{
        		$data['msj_error'] = "<div align='center' class='msj_error'>No existen causas almacenadas</div>";
        		$this->load->view('mod_causas/no_data',$data);
        	}
        	else
        	{
	 			$data['fecha'] = $data['fecha'] ->fecha_iniciacion;	
	 			$data['results'] = $this->causas_model->getCausa_fecha($data['fecha']);
	 			$this->load->view('mod_causas/index_causas',$data);
        	}       	
        }
    }
    
    function validSearch()
    {
        $config = array(
               array(
                     'field'   => 'idCausa',
                     'label'   => 'Causa',
                     'rules'   => 'required|min_length[5]'
                  ));
	    $this->form_validation->set_rules($config);

        
        if($this->form_validation->run() == FALSE)
        {
             echo validation_errors('<div class="msj_error" align="center">','</div>');
        }
        else
        {
        	$tipo = 0;
        	$this->showCausasLike($tipo);
        } 
    }
	function validSearch_histo()
    {
        $config = array(
               array(
                     'field'   => 'idCausa_histo',
                     'label'   => 'Causa',
                     'rules'   => 'required|min_length[5]'
                  ));
	    $this->form_validation->set_rules($config);

        
        if($this->form_validation->run() == FALSE)
        {
             echo validation_errors('<div class="msj_error" align="center">','</div>');
        }
        else
        {
        	$tipo = 1;
        	$this->showCausasLike($tipo);
        } 
    }

   	function showCausasLike($tipo)
    {		
		
		/*
		 * Recepción de la Cadena a comparar
		 */
        if($tipo == 1)
        {
        	$chainLike = $this->input->post('idCausa_histo');	
        }
        else
        {
        	$chainLike = $this->input->post('idCausa');
        }
        
        $data['tipo'] = $tipo;
    	
		/*
		 * Total de aciertos para la cadena ingresada $chainlike con la base de datos
		 */
		$data['totalResults'] = $this->causas_model->totalResults($chainLike);

		if($data['totalResults'] == 0)
		{
			echo "<div align='center' class='msj_error'>No existen coincidencias para <b>".$chainLike."</b></p>";
		}
		else
		{
			
			if($tipo == 1)
        	{
				$data['results'] = $this->causas_model->getCausasLike_histo(100,$chainLike,$this->uri->segment(3));
        	}
			if($tipo == 0)
			{
				$data['results'] = $this->causas_model->getCausasLike(100,$chainLike,$this->uri->segment(3));
			}
			if(!empty($data['results']))
			{
					$this->load->view('mod_causas/showCausas',$data);  	
			}
			else
			{
			echo "<div align='center' class='msj_error'>No existen coincidencias para <b>".$chainLike."</b></div>";
								
			}
		}
	}
	function showCausasAll()
	{	
		$idCausa = $this->uri->segment(4);
	    $data['results'] = $this->causas_model->getCausaRol($idCausa);
	    $data['history'] = $this->causas_model->getFilesCausa($idCausa, $order = 'desc');
	    if($data['history'] -> num_rows() == 0)
	    {
	    	$data['cols'] = 0;
	    	$this->load->view('mod_causas/showCausasDetails',$data);
	    }
	    else
	    {
	    	$data['cols'] = 1;
	    	$this->load->view('mod_causas/showCausasDetails',$data);
	    }
	    
		
	}
	
	function makePdf()
	{
		$idCausa = $this->uri->segment(4);
		$data['results'] = $this->causas_model->getCausasLike_all(1,$idCausa,$this->uri->segment(3));
		$this->load->plugin('to_pdf');
		$this->load->helper('file');
		$tipo_causa = $this->causas_model->get_tipo_causa($idCausa);
		if(strcmp($tipo_causa ,'Comunicación') == 0)
		{
			$this->load->view('mod_causas/pdfCausa_c',$data);
		}
		else
		{
			$this->load->view('mod_causas/pdfCausa_r',$data);
		}
		$html = $this->output->get_output();		
    	$nombre = 'causas_'.$idCausa;
    	$orientacion = 'portrait';
    	//$orientacion = 'landscape';
       	pdf_create($orientacion,$html, $nombre);	
	}
	function showFoja()
	{
		$data['idCausa'] = $this->uri->segment(4);
		$this->load->view('mod_causas/showFoja',$data);
	}
	function getRol_histo()
	{
		$rolid = $this->input->post('idCausa_histo');

		$rol = $this->causas_model->getRolLike_histo(1000,$rolid);
		$materia = $this->causas_model->getMateriaLike_histo(1000,$rolid);
		
		echo "<ul>";
		if($rol->num_rows() != 0){
			foreach ($rol->result() as $row)
			{
					echo "<li>".$row->rol."</li>";
				
			}
		}
		else{
			foreach ($materia->result() as $row)
			{
				echo "<li>".character_limiter($row->materia,13)."</li>";
			}
		}
		echo "</ul>";	
	}
	function reg_book()
	{
        $inicio = $this->uri->segment(4);
		$final = $this->uri->segment(5);
		if($total_resultados = $this->causas_model->get_range_rol_total($inicio,$final))
		{
				echo "<div align='center' class='msj_success'>Se encontraron un total de ".$total_resultados." registros.</div>";
				echo "<br /><div align='center' class='msj_success'>Para generar pdf e imprimir los registros encontrados presione <a href='".base_url()."index.php/mod_causas/causas/make_pdf_book_reg/1/".$inicio."/".$final."'>AQUÍ</a></div>";
				$data['resultados'] = $this->causas_model->get_range_rol($inicio,$final);
				$this->load->view('mod_causas/libro_registros',$data);
			}
			else
			{
				echo "<style type='text/css'>
				body{
					padding: 5px 0 0 5px;
					font-size:14px;
					background: #DDCD82;
					text-align: center;
					font-family:Arial; 
					line-height:1em; 
					color:#000; 
					text-align:center;
				}
				</style>";
				echo "<div align='center' class='msj_error'>Los resultados entre <b>".$inicio." y ".$final."</b> son 0.</div>";
				echo "<div align='center' class='msj_error'>Verifique la integridad de los datos e intente nuevamente.</div>";
				echo "<p align='center'><a href='javascript:close();'>Cerrar ventana</a><p>";
			}
			
        }
	function make_pdf_book_reg()
	{
		$this->load->plugin('to_pdf');
		$this->load->helper('file');
		
		$opc = $this->uri->segment(4);
		if($opc == '1')
		{
			$inicio = $this->uri->segment(5);
			$final = $this->uri->segment(6);
		
			$data['resultados'] = $this->causas_model->get_range_rol($inicio,$final);
			$this->load->view('mod_causas/libro_registro_pdf',$data);
		}
		if($opc == '2')
		{
			$busqueda = $this->uri->segment(5);
		  	$procedencia = $this->causas_model->get_procedencia(1000,$busqueda);
			$materia = $this->causas_model->get_materia(1000,$busqueda);
			
			if($procedencia ->num_rows() !=0 || $materia->num_rows !=0)
			{
				$data['resultados'] = $this->causas_model->get_procedencia_data(1000,$busqueda);
			}
			else
			{
				$data['resultados'] = $this->causas_model->get_ano_data(1000,$busqueda);
			}
        	
				$this->load->view('mod_causas/libro_registro_pdf',$data);
			
		}
		$html = $this->output->get_output();		
    	$nombre = 'libro_registros';
    	$orientacion = 'landscape';
       	pdf_create($orientacion,$html, $nombre);
		
	}
	function get_procedencia_materia()
	{
		
		$chain_like = $this->input->post('procedencia_materia_book_reg');
		$procedencia = $this->causas_model->get_procedencia(1000,$chain_like);
		$materia = $this->causas_model->get_materia(1000,$chain_like);
		echo "<ul>";
		if($procedencia->num_rows() != 0){
			foreach ($procedencia->result() as $row)
			{
					echo "<li>".$row->procedencia."</li>";
				
			}
		}
		else{
		foreach ($materia->result() as $row)
			{
					echo "<li>".character_limiter($row->materia,20)."</li>";
				
			}
		}
		echo "</ul>";	
	}
	function procedencia_materia()
	{

		  	$busqueda = $this->uri->segment(4);
		  	$procedencia = $this->causas_model->get_procedencia(1000,$busqueda);
			$materia = $this->causas_model->get_materia(1000,$busqueda);
			
			if($procedencia ->num_rows() !=0 || $materia->num_rows !=0)
			{
				$data['resultados'] = $this->causas_model->get_procedencia_data(1000,$busqueda);
			}
			else
			{
				$data['resultados'] = $this->causas_model->get_ano_data(1000,$busqueda);
			}
        	
		  	if($total_resultados = $data['resultados']->num_rows())
			{
				echo "<div align='center' class='msj_success'>Se encontraron un total de ".$total_resultados." registros.</div><br />";
				echo "<div align='center' class='msj_success'>Para generar archivo en formato PDF presione ".anchor('mod_causas/causas/make_pdf_book_reg/2/'.$busqueda,'AQUÍ')."</div>";
				$this->load->view('mod_causas/libro_registros',$data);
				
			}
			else
			{
				echo "<style type='text/css'>
				body{
					padding: 5px 0 0 5px;
					font-size:14px;
					background: #DDCD82;
					text-align: center;
					font-family:Arial; 
					line-height:1em; 
					color:#000; 
					text-align:center;
				}
				</style>";
				echo "<div align='center' class='msj_error'>Los resultados para <b>".$busqueda."</b> son 0.</div>";
				echo "<div align='center' class='msj_error'>Verifique la integridad de los datos e intente nuevamente.</div>";
				echo "<p align='center'><a href='javascript:close();'>Cerrar ventana</a><p>";
			}
	}

}//fin Causas
?>